第 14 屆 iThome 鐵人賽 (2022)
{%hackmd BJrTq20hE %}
NPM 全稱 Node Package Manager,為 Node 套件管理員,他會隨著 Node.js 自動安裝,是Node.js預設的、以JavaScript撰寫的軟套件管理系統。本篇介紹NPM及其工作原理,屬性說明與常用指令。
NPM是以node.js為基礎的套件管理員,也是整個社區支援的。NPM適用於解決程式分享、重用和部屬問題,包含協力廠商類別酷的匯入和相依關係的建立等問題。
▀ 讓使用者從NPM伺服器下載他人撰寫的協力廠商套見到本機使用。
▀ 允許使用者從NPM伺服器下載他人撰寫的命令列城市到本機使用。
對於套件(Package)管理,首先就是要了解什麼是套件,套件通常是指一個檔案或一個目錄。其中包含了
▀一個資料夾包含一個package.json的設定檔
▀解析GZIP的URL
▀包含GZIP壓縮檔
▀未登錄檔增加@的資訊
我們就不多說,來創建一個屬於自己的Json檔的Package吧!
首先控制台到我們要創建Package的資料夾(我的資料夾就叫Package)
輸入
npm init
接下來他會依序要求您輸入一連串的資訊依序為:
*Name : 套件名稱
Version : 件的版本編號,語意版本編號分為X.Y.Z三位,分別代表主版本編號、次版本編號和更新版本編號
*Descripition : 套件的描述。
Homepage : 套件的官網位址。 被改成entry point
Entry point : 起始點,當這個套件被要求時會引述的主程式,Entry point應該是套件主程式中主要邏輯被放置的地方通常是"app.js"。
test command : 測試指令,其他使用者下載時能夠測試套件是否安裝正確的指令
git repository : git 資料庫,連結Package到本地或是遠端的資料庫
keywords : 當其他人搜尋你的Package的關鍵詞
*Author : 套件的作者姓名
Contributors : 套件的其他貢獻者姓名
license: (ISC) 授權
Dependcies : 相依套件清單,指定了專案執行所依賴的模組。如果相依套件沒有安裝,npm就會自動將相依套件安裝在node_module目錄
打星號是必填的地方 其他的可以用空白鍵使用預設
創建完後你的資料夾裡就會有新生成的Package拉
現在假設我們要安裝一個模組,這邊使用express當作範例,下一篇也會用到,那就先輸入
npm install express
你會注意到它快速的幫我們加入了dependecies,也就是這個套件會需要用到的模組
或是你不會注意到,但!我想說的是Node的package創建很彈性而且快速,
以下附上幾個模組操作的指令
npm info {套件名稱} version 查看模組最新版本
npm uninstall {套件名稱} 卸載套件
明天我們會更深入的探索【NPM深入安裝套件與管理】!